Browser extension for client-side tokenized authentication

ABSTRACT

A direct payment token generation method provides executable codes to a client device. The executable codes invokes functionalities in a browser application. The set of executable codes further provides login prompts to the user for logging to a virtual wallet account. The method provides a list of products for purchase from merchants in response to a successful login to the virtual wallet account. A graphical element is provided for purchasing one provided product from one of the merchants. In response to receiving a selection of the provided graphical element confirming the purchase, a payment token is generated for the virtual wallet account. The received selection includes confirming detailed information of the purchase. The payment token is transmitted to the client device and is embedded in a payment payload with the detailed information of the purchase. The payment load is transmitted to the one of the merchants to complete the purchase.

CROSS-REFERENCE TO RELATED APPLICATION

This is an PCT international stage patent application of and claimspriority to a U.S. provisional patent application, Ser. No. 62/451,638,filed on Jan. 27, 2017 and a U.S. provisional patent application, Ser.No. 62/451,664, filed on Jan. 28, 2017, whose disclosures areincorporated by reference in its entirety herein. The disclosure is alsogenerally related to a commonly-owned U.S. nonprovisional patentapplication Ser. No. 15/418,552, entitled “ACCEPTING ISSUER CREDENTIALSAT CHECKOUT”, filed also on Jan. 27, 2017, which claims priority to anU.S. provisional patent application Ser. No. 62/287,754 filed on Jan.27, 2016, whose disclosure is incorporated by reference in its entiretyherein. This disclosure is further generally related to a commonly-ownedU.S. nonprovisional patent application Ser. No. 14/938,530, entitled“BROWSER EXTENSION WITH ADDITIONAL CAPABILITIES”, filed on Nov. 11,2015, whose disclosure is incorporated by reference in its entiretyherein.

FIELD OF THE INVENTION

Embodiments of the invention generally relates to systems and methodsfor generating client-side tokenized authentication via a browserextension.

BACKGROUND

Shopping on the Internet has become such a customary and common part ofa user's lifestyle that the user rarely thinks twice about it. Theonline shopping has also been tracking the existing shopping orpurchasing model: the user visits a merchant's website (as if that's themerchant's physical storefront); the user either selects a particularcategory of goods or services or enters a particular search item tobrowser through the returned results; the user reviews details about thedesirable item or items; adding the items to the shopping cart; andeventually begins the checkout process.

The checkout process typically requires the user either signs into themerchant's secure payment portal or account, creates a new account if noexisting account is found, or proceeds as a guest. Once signed in, themerchant typically starts a checkout session with arbitrary orpredetermined expiration time for the user to complete the checkoutprocess before the items in the shopping cart is removed or the user isforced to be logged out. During this checkout session, the user may thenverify or enter payment information and shipping information, etc., tocomplete the checkout process.

Because online shopping breaks the physical barriers of the merchant'sstorefront, if any, the user frequently use the Internet search enginesto compare prices or browsing merchant's competitors' sites eithersimultaneously or in different Internet browser pages. This virtualstore-hopping is made especially easy by the Internet. However, thisvirtual “window shopping” and virtual “store-hopping” could be verytime-consuming and repetitive. The problem is because many merchantshave required consumers to establish accounts to receive special offersor deals or even showing coupons on the page. As such, the user would berequired to enter credentials to log-in to the accounts at variousmerchant sites. This is a problem because it takes a tremendous amountof time. This problem is further exacerbated by the fact that, duringthe virtual “window-shopping” or virtual “store-hopping,” the checkoutsession may expire. For those who have created an account, the addeditems should still be in the shopping cart. However, for those whodidn't have an account and used a temporary or guest account before thecheckout process, the shopping cart items would likely be removed afterthe expiration. So the user needs to start over.

The above problem is further translated to the merchants. For example,the above situation with expired session means the merchant's server hasprovided wasted resources to the user. Also, the merchant has no littleor no idea whether the user was virtual window-shopping, comparingcompetitor's prices or just being distracted by other legitimatereasons. In other words, the abandoned carts or items fail to providethe merchant any definitive or probable explanation. Moreover, themerchant also could not track loyalty of brands in the current shoppingbehavior.

Of course, some merchants have attempted to become the mega store thatcarries such a wide range of goods that it is very likely to find almostanything and everything that a majority of users need or want. However,even at the mega store, the problems above relating to checkout sessiontimed-out, repeated logins, account establishments, virtualwindow-shopping, virtual store-hopping, etc., continue.

Furthermore, after the checkout, the merchant needs to take the user'spayment method to pay for the transaction/purchase. The merchanttypically needs to build a robust secure transaction channel to ensurethe payment method information of the user is protected. For example,the merchant needs to secure the payment methods each time by receivingauthentications from payment processors. If the merchant does not wishto spend resources to build such a secure transaction channel, a thirdparty may provide such service. However, this does not alleviate theresponsibility of the merchant in securely store user's information inthe accounts associated with the merchant.

Therefore, it is desirable to approach online shopping from theperspective of the users and to resolve some of the above problems thatare not only convenient but also breaks down the online shopping norm byremoving the need to visiting different store sites and repeating thelogin step. It is also desirable to create a new shopping experiencethat is secure, both to the user and the payment vehicle issuers (suchas banks, etc.).

SUMMARY

In one embodiment, aspects of the invention create a specific browserextension, plug-in or add-on that is conveniently installed on a clientdevice of the user that brings the shopping experience to the user. Inone example, the browser extension triggers or drives graphical userinterface (GUI) elements that display items of interests from the user'sbrowsing history, calendar notes, to-do lists, reminders, address book,etc. In a further example, the browser extension is integrally connectedwith a payment processing account sponsored by a payment processor. Thepayment processing account links at least one payment vehicle (and doesnot need to be affiliated with the payment processor) such that the usermay choose among them at the time of payment. Moreover, once the userwishes to checkout an item, the browser extension defines checkoutscreens, pages or widgets on the user's browser to begin the checkoutprocess. When the payment is to be transmitted, the payment processorgenerates a specific payment token via the browser extension to theclient device of the user, instead of sending it to the merchant, toauthenticate the transaction. Therefore, the user would know the paymentmethod and transaction is securely done.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention may be better understood by reference to the detaileddescription when considered in connection with the accompanyingdrawings. The components in the figures are not necessarily to scale,emphasis instead being placed upon illustrating the principles of theinvention. In the figures, like reference numerals designatecorresponding parts throughout the different views.

FIG. 1 illustrates a diagram showing one implementation according to oneembodiment of the invention.

FIG. 2 illustrates a diagram showing an exemplary implementation of abrowser extension according to one embodiment of the invention.

FIG. 3 illustrates a diagram showing a further alternativeimplementation according to one embodiment of the invention.

FIGS. 4-9 illustrate diagrams showing graphical user interfaces as aresult of the browser extension implementation according to oneembodiment of the invention.

FIG. 10 illustrates a flow diagram of one method according to oneembodiment of the invention.

FIG. 11 illustrates a flow diagram of another method according to oneembodiment of the invention.

FIG. 12 illustrates a diagram of a high level illustration of a portablecomputing device according to one embodiment of the invention.

FIG. 13 illustrates a diagram of an exemplary user computing deviceaccording to one embodiment of the invention.

FIG. 14 illustrates an exemplary server computing system according toone embodiment of the invention.

Persons of ordinary skill in the art may appreciate that elements in thefigures are illustrated for simplicity and clarity so not allconnections and options have been shown to avoid obscuring the inventiveaspects. For example, common but well-understood elements that areuseful or necessary in a commercially feasible embodiment are not oftendepicted in order to facilitate a less obstructed view of these variousembodiments of the present disclosure. It will be further appreciatedthat certain actions and/or steps may be described or depicted in aparticular order of occurrence while those skilled in the art willunderstand that such specificity with respect to sequence is notactually required. It will also be understood that the terms andexpressions used herein are to be defined with respect to theircorresponding respective areas of inquiry and study except wherespecific meanings have otherwise been set forth herein.

DETAILED DESCRIPTION

The present invention may now be described more fully with reference tothe accompanying drawings, which form a part hereof, and which show, byway of illustration, specific exemplary embodiments by which theinvention may be practiced. These illustrations and exemplaryembodiments may be presented with the understanding that the presentdisclosure is an exemplification of the principles of one or moreinventions and may not be intended to limit any one of the inventions tothe embodiments illustrated. The invention may be embodied in manydifferent forms and should not be construed as limited to theembodiments set forth herein; rather, these embodiments are provided sothat this disclosure will be thorough and complete, and will fullyconvey the scope of the invention to those skilled in the art. Amongother things, the present invention may be embodied as methods, systems,computer readable media, apparatuses, or devices. Accordingly, thepresent invention may take the form of an entirely hardware embodiment,an entirely software embodiment, or an embodiment combining software andhardware aspects. The following detailed description may, therefore, notto be taken in a limiting sense.

It is to be understood that analysts of all disciplines, either in ascientific field, social science studies, manufacturing, etc.,constantly face with plethora of data to identify and process. Part ofthese analyses is to generate insights out of different datasets. Thereare many approaches, but one of the approach is to identifyingcorrelations between datasets. In such an attempt, one may perform ajoin operation of two or more datasets stored in database storage orstructures. The “join” operation may be part of database programming andsuch operation typically includes a syntax and a set of requiredparameters for a database oriented computer, such as a database server,to execute and generate results. When the datasets are small, thejoining operation does not take very long, and the results are typicallyprovided or generated instantaneously. However, as the size of thedatasets starts growing exponentially, the join performance sufferssignificantly. This is because the join operation requires sorting andsearching of the relevant data fields in the targeted datasets beforeproducing an output dataset with the joined results.

Referring now to FIG. 1 , a block diagram of a system 100 in accordancewith exemplary embodiments. System 100 may include a merchant server102, a payment processor server 104, and at least one issuer server 106communicatively coupled to one another and at least one user device 110via one or more computer networks 108 (e.g., local area network, widearea network, wireless network, wired network, and the like, and/or somecombination thereof). Issuer servers 106-1-106-n are depicted, where nis a positive integer.

A user device 110 may interact with a merchant server 102 to obtain amerchant's graphical user interface for viewing items (e.g., goods,services, and the like) for sale and making purchases from the merchant.An example of a merchant's graphical user interface (GUI) is a webpage112. The webpage 112 may further include an individual page 114displaying one or more items for sale, purchase, rent, or transaction asshown in FIG. 1 .

Typically, the merchant may provide on the page 114 the ability for theuser to purchase the displayed items. For example, the merchant may showa selectable button or a graphical element that when selected triggersor initiates a checkout process. Instead of the merchant directlycollecting payment from the user, the merchant may leverage technologyprovided by a payment processor and/or an issuer to collect payment whenthe user selects this “BUY” button.

However, this requires the merchant to ensure the transaction is safeand secured.

Aspects of the invention introduces, in one embodiment, a browserextension, plug-in, add-on or an element that provides a better shoppingexperience and a quick transaction experience to the user. In oneexample, the browser extension includes a set of executable codes thatis executed within the browser execution environment. In anotherembodiment, the browser extension may be executable as an operatingsystem function-call that is associated with the operating system of aclient device, such as FIG. 13 , of the user.

To further illustrate the browser extension aspect of embodiments of theinvention, referring now to FIG. 2 , a block diagram illustrates such anembodiment. For example, a browser application 202 may drive oneinstance 204 as a graphical user interface of the browser application202 upon activation or execution. The browser application 202 mayprovide a toolbar 208, a plurality of display areas or panels wheredifferent areas of the graphical user interface require a specificstructured graphical user interface element paired with a pre-scribedfunctionality directly related to the graphical user interface'sstructure/panels. For example, the panel 206-1 may show the main contentof a given webpage. The panel 206-2 may include data fields to shownotifications or notes of the user. The panel 206-3 may include furtherdata fields to show browsing history of the user.

In another embodiment, the browser extension may be morphed tonon-visual platforms. For example, as shown in FIG. 3 , a diagramillustrates a user interactive device 302 that interacts with the uservia audio instructions or commands only. The user interactive deviceincludes a processor 304, a memory 306 storing data, a networkconnectivity device 312, and audio input and output device 314. Aspectsof the browser extension may be translated to computer-executableinstructions that are defined as different sets of “skill”. Such setsmay be stored separately in 308 as part of the memory 306. Moreover,parameters needed for the “skill” may be stored in 310 of the memory306.

To further illustrate examples of the invention, it is to be understoodthat whether in the form of a browser extension or a “skill” for theuser interactive device 302, the functionality of the browser extensionor “skill” may need to be loaded or installed onto the client device,whether the client device be a computing device with a visual display(such that browser extension may be added thereto) or an audio onlydevice where no visual display is provided or needed for the device tofunction, such as the user interactive device 302. For example, thefunctionality of the browser extension may be downloaded to thecomputing device via wire or wirelessly. Once it is loaded, thefunctionality of the browser extension or “skill” is operational andready for the user to interact.

For the sake of simplicity and convenience and by no means a limitation,the functionality of the browser extension may be referred to as a“Flash,” or a “Flash button,” for the remainder of the specification.

Referring now to FIGS. 4-9 , a series of diagrams showing screendisplays according to one embodiment of the invention. In one example,once the Flash button is installed, the Flash button may appear on thebrowser as a button or a graphical element easily recognizable andaccessible on the browser application by the user. See FIG. 4 , button212 on a browser toolbar 402. In the non-visual scenario, the Flash maybe ready for execution once a trigger word or a keyword is detectedaudibly by the user interactive device 302. Next, it may need to beinitialized. Such initialization may involve connecting to an accountwith a payment processor, obtain authorization from the user to accessvarious data of the user on the client device, or the like. For example,in one embodiment, the Flash button may provide access to a virtualwallet account associated with a payment processor. As such, at theinitialization stage, upon selecting the Flash button, the user may beprompted to login to the virtual wallet account.

In another embodiment, merchants wishing to be part of the Flash programwith the payment processor 104 may associate a merchant-end Flash buttonwith a product, such as one shown on the page 114 in FIG. 1 . On thebackend, either through web crawlers or application programminginterface (API) protocols, merchants provide, feed, or share product SKUnumber, maximum quantities available, buying criteria (e.g., size,width, length, age, color, etc.,), discounts, coupons, due dates, etc.,to the payment processor 104.

It is to be understood that the payment processor 104 may have variousdatabases to process, organize, prioritize, etc., the received data fromthe different merchants such that the payment processor 104 may presentthe various products in an organized way.

In one embodiment, upon initialization of the Flash button as a browserextension, the Flash detects whether the user already has an accountwith the virtual wallet account. In some examples, a user may pre-enrollin a payment processor checkout program to link an account a user hasestablished with an issuer to a virtual wallet account established withthe payment processor. An issuer may be a bank that issues a credit ordebit card to a user in association with a particular payment processor(e.g., VISA). Merchants may enroll in the virtual wallet program of thepayment processor so that customers can simply input an alias andcredential, instead of a personal account number (e.g., credit cardnumber), when making purchases online. It is typically simpler for acustomer to remember an alias and a credential (e.g., username andpassword), as compared to a personal account number, thus making iteasier for a customer to make an online purchase and more likely thatthe customer actually completes the purchase.

Still referring to FIG. 4 , upon selecting the Flash by the user, theFlash may trigger the browser drive or execute GUI elements on thebrowser. For example, after the user is logged with the Flash andselects the Flash using a pointing device, such as a mouse or a touchgesture, a graphical element 404 may be displayed showing one or moreways to organize products available for purchase. For example, thegraphical element 404 may first organize the products by categories,(buying) criteria, availability, popularity, etc., It is to beunderstood that other classification of products may be used withoutdeparting from the scope and spirit of embodiments of the invention.

Similarly, a separate graphical element 406 may be triggered if the userselects one of the categories. For example, the graphical element 406may be a window or panel that shows details 212 of a product, such as aphoto of the item, the name of the item, a description of the item, etc.

Referring now to FIG. 5 , an alternative graphical element 502 may bedisplayed in response to the user selecting one of the item. In thisexample, the graphical element 502 also shows some details of theproduct/item in pane or section 508. In addition, sections 506 mayinclude some buying criteria. Moreover, the graphical element 502includes an button “ORDER NOW” 504. This button, upon selection, maytrigger the Flash to initiate a checkout process. On the other hand, ifthe user selects a button 510, the graphical element 502 may disappear,see FIG. 6 , but the viewed item in 508 may still be part of the historythat the Flash stores in the client device as well as the virtual walletaccount of the user. For example, the Flash may keep the recently vieweditem under a heading of “Recently viewed” or other similar title. Inanother embodiment, the Flash may automatically add a notification icon602 to the Flash to remind the user. For example, the icon 602 maydynamically change the number depending on the number of “Recentlyviewed” items are there associated with the user. It is to be understoodthat the notification numbers may be configured in a setting of theFlash or with the virtual wallet account of the user without departingfrom the scope or spirit of the invention. In another embodiment, theFlash button may visually provide visual cues such as flashing thebutton on the toolbar 402. In one example, the flashing visual cues mayalso indicate timing of the purchase or when to buy.

In the non-visual implementation, the Flash may provide audio remindersperiodically or in response to a related skill being triggered. Forexample, the Flash may provide functionalities to monitor parameters ofother related skills. In one instance, suppose the user issues thefollowing command: “Device, search for the NBA ticket on Jan. 27, 2017.”In this example, the “search for” or “search” command may be a “skill”for the non-visual user interactive device and “the NBA ticket on Jan.27, 2017” may be parameters for the “skill.” Upon detecting related the“skill,” the Flash may audibly reminder the user that they are “Recentlyviewed” items in the Flash or virtual wallet account that is related tothe items for the related “skill.”

Referring now to FIG. 7 , suppose that the user, instead of selectingthe button 602, selects button 504 after also satisfying other buyingcriteria for the item (such as size and quantity, as an example), theFlash provides a graphical element 702 as a confirmation that the itemhas been purchased. For example, as described above, on the backend, themerchants have already provided the detailed information of any givenitem/product to the payment processor and that, via the Flash, the useris logged into the virtual wallet account associated with the paymentprocessor. As such, upon activating the ORDER NOW button 504, the Flashtriggers sending a checkout payload to start the checkout process. Inone example, the checkout payload includes all information related tothe ordered item that the merchant needs to process the order as well asa client-side token or tokenized authentication from the paymentprocessor to the user via the virtual wallet account. In other words,instead of the typical purchasing experience of the user visiting themerchant and having the merchant takes payment information to completethe checkout process, embodiments of the invention provide a securechannel from the payment processor to the Flash implemented checkoutprocess. The secured, one-time payment token or tokenized authenticationis issued or generated from the payment processor for the user. Thispayment token may be further included in the payment payload to beforwarded to the merchant such that it may then presented for paymentfrom the issuer where the payment vehicle of the user is issued.

In another embodiment, FIG. 8 illustrates another embodiment of theFlash where the user may see more than one items are organized in agraphical element 801. The graphical element 801 may organize thedifferent items 805 and 813 with different ORDER NOW buttons 803 and809, respectively. In one embodiment, the order of the display may bebased on priority preferences, configuration preferences, etc., that maybe set by the user.

In another embodiment in FIG. 9 , a graphical element 815 may show orderhistory of items, such as item 817 of the user.

In another embodiment, the Flash may enable convenient and no-hasslereorder of frequently purchased items. For example, because Flash isproduct-based and not merchant-based implementation on the client deviceof the user, the Flash may enable to-do or to-buy list without the needto specifically selects an item to reorder. While some reorder itemshave time tendencies or frequencies that are easy to predict, some maynot be. As such, some automatic suggested reordering subscriptions maybe annoyed based on some of the existing implementations.

In another embodiment, the Flash may enable bill payment features oraggregated bill payment features where a number of bills that are dueclose in time may be presented to the user for payment. It is to beunderstood that some of the bills may be discovered by the virtualwallet account where the user has used some of the payment vehicles topay in the past, e.g., past payments.

Moreover, if one the items shown by the Flash is not available from amerchant where the user previously purchased from, the Flash maysubstitute the merchant while updating the price if the pricing isdifferent. This is a drastic departure of some of the mega-store'simplementation because in that implement, there is only one preferredmerchant. While there may a third party seller, the third party selleris usually placed in a secondary position.

The Flash is neutral to the merchant; it allows the user to configurehow the priority is displayed. Hence, it provides a merchant-neutralshopping experience and is capable to invoke payment task in one-action(e.g., selecting the Flash button) or ask for the Flash skill in anon-visual implementation.

Merchant initializes and renders Visa Flash icon against relevantproducts. (using v.init for Flash).

Merchant shares SKU number, Maximum quantities available, BuyingCriteria (Size/Width/Length/Age/Color/etc.).

When user clicks on the Visa Flash icon, Visa Checkout intimatesmerchant through a Visa Checkout/Flash payload. (using Payload forFlash).

Merchant initializes and renders Visa Flash icon against relevantproducts. (using v.init for Flash).

Merchant shares SKU number, Maximum quantities available, BuyingCriteria (Size/Width/Length/Age/Color/etc.).

When user clicks on the Visa Flash icon, Visa Checkout intimatesmerchant through a Visa Checkout/Flash payload. (using Payload forFlash)

FIG. 12 may be a high level illustration of a portable computing device800 communicating with a remote computing device 1441 but theapplication may be stored and accessed in a variety of ways. Inaddition, the application may be obtained in a variety of ways such asfrom an app store, from a web site, from a store Wi-Fi system, etc.There may be various versions of the application to take advantage ofthe benefits of different computing devices, different languages anddifferent API platforms.

In one embodiment, a portable computing device 800 may be a mobiledevice 112 that operates using a portable power source 855 such as abattery. The portable computing device 800 may also have a display 802which may or may not be a touch sensitive display. More specifically,the display 802 may have a capacitance sensor, for example, that may beused to provide input data to the portable computing device 800. Inother embodiments, an input pad 804 such as arrows, scroll wheels,keyboards, etc., may be used to provide inputs to the portable computingdevice 800. In addition, the portable computing device 800 may have amicrophone 806 which may accept and store verbal data, a camera 808 toaccept images and a speaker 810 to communicate sounds.

The portable computing device 800 may be able to communicate with acomputing device 1441 or a plurality of computing devices 1441 that makeup a cloud of computing devices 811. The portable computing device 800may be able to communicate in a variety of ways. In some embodiments,the communication may be wired such as through an Ethernet cable, a USBcable or RJ6 cable. In other embodiments, the communication may bewireless such as through Wi-Fi (802.11 standard), Bluetooth, cellularcommunication or near field communication devices. The communication maybe direct to the computing device 1441 or may be through a communicationnetwork 102 such as cellular service, through the Internet, through aprivate network, through Bluetooth, etc. FIG. 13 may be a simplifiedillustration of the physical elements that make up a portable computingdevice 800 and FIG. 14 may be a simplified illustration of the physicalelements that make up a server type computing device 1441.

FIG. 13 may be a sample portable computing device 800 that is physicallyconfigured according to be part of the system. The portable computingdevice 800 may have a processor 850 that is physically configuredaccording to computer executable instructions. It may have a portablepower supply 855 such as a battery which may be rechargeable. It mayalso have a sound and video module 860 which assists in displaying videoand sound and may turn off when not in use to conserve power and batterylife. The portable computing device 800 may also have volatile memory865 and non-volatile memory 870. It may have GPS capabilities 880 thatmay be a separate circuit or may be part of the processor 850. Therealso may be an input/output bus 875 that shuttles data to and from thevarious user input devices such as the microphone 806, the camera 808and other inputs, such as the input pad 804, the display 802, and thespeakers 810, etc. It also may control of communicating with thenetworks, either through wireless or wired devices. Of course, this isjust one embodiment of the portable computing device 800 and the numberand types of portable computing devices 800 is limited only by theimagination.

As a result of the system, better information may be provided to a userat a point of sale. The information may be user specific and may berequired to be over a threshold of relevance. As a result, users maymake better informed decisions. The system is more than just speeding aprocess but uses a computing system to achieve a better outcome.

The physical elements that make up the remote computing device 1441 maybe further illustrated in FIG. 14 . At a high level, the computingdevice 1441 may include a digital storage such as a magnetic disk, anoptical disk, flash storage, non-volatile storage, etc. Structured datamay be stored in the digital storage such as in a database. The server1441 may have a processor 1000 that is physically configured accordingto computer executable instructions. It may also have a sound and videomodule 1005 which assists in displaying video and sound and may turn offwhen not in use to conserve power and battery life. The server 1441 mayalso have volatile memory 1010 and non-volatile memory 1015.

The database 1025 may be stored in the memory 1010 or 1015 or may beseparate. The database 1025 may also be part of a cloud of computingdevice 1441 and may be stored in a distributed manner across a pluralityof computing devices 1441. There also may be an input/output bus 1020that shuttles data to and from the various user input devices such asthe microphone 806, the camera 808, the inputs such as the input pad804, the display 802, and the speakers 810, etc. The input/output bus1020 also may control of communicating with the networks, either throughwireless or wired devices. In some embodiments, the application may beon the local computing device 800 and in other embodiments, theapplication may be remote 1441. Of course, this is just one embodimentof the server 1441 and the number and types of portable computingdevices 1441 is limited only by the imagination.

The claimed system and method may address several technical problems andchallenges, some of which are described. Currently, entering potentialsensitive data across networks makes users nervous to the point that asale may be lost or money or time saving tips or coupons may not bereceived. By using a proprietary network such as a payment network, totransfer potentially sensitive data, security may be higher and usersmay be more open to joining additional beneficial programs. Similarly,moving data from one payment system to another loyalty system has feltrisky to some users, but by using a proprietary, trusted network, thedata may be communicated in a more trustworthy fashion. In addition,formatting data and communicating data in a manner which may beunderstood by a variety of additional programs is a technical challengeor problem which the system and method has addressed.

The user devices, computers and servers described herein may be generalpurpose computers that may have, among other elements, a microprocessor(such as from the Intel Corporation, AMD or Motorola); volatile andnon-volatile memory; one or more mass storage devices (i.e., a harddrive); various user input devices, such as a mouse, a keyboard, or amicrophone; and a video display system. The user devices, computers andservers described herein may be running on any one of many operatingsystems including, but not limited to WINDOWS, UNIX, LINUX, MAC OS, orWindows (XP, VISTA, etc.). It is contemplated, however, that anysuitable operating system may be used for the present invention. Theservers may be a cluster of web servers, which may each be LINUX basedand supported by a load balancer that decides which of the cluster ofweb servers should process a request based upon the current request-loadof the available server(s).

The user devices, computers and servers described herein may communicatevia networks, including the Internet, WAN, LAN, Wi-Fi, other computernetworks (now known or invented in the future), and/or any combinationof the foregoing. It should be understood by those of ordinary skill inthe art having the present specification, drawings, and claims beforethem that networks may connect the various components over anycombination of wired and wireless conduits, including copper, fiberoptic, microwaves, and other forms of radio frequency, electrical and/oroptical communication techniques. It should also be understood that anynetwork may be connected to any other network in a different manner. Theinterconnections between computers and servers in system are examples.Any device described herein may communicate with any other device viaone or more networks.

The example embodiments may include additional devices and networksbeyond those shown. Further, the functionality described as beingperformed by one device may be distributed and performed by two or moredevices. Multiple devices may also be combined into a single device,which may perform the functionality of the combined devices.

The various participants and elements described herein may operate oneor more computer apparatuses to facilitate the functions describedherein. Any of the elements in the above-described Figures, includingany servers, user devices, or databases, may use any suitable number ofsubsystems to facilitate the functions described herein.

Any of the software components or functions described in thisapplication, may be implemented as software code or computer readableinstructions that may be executed by at least one processor using anysuitable computer language such as, for example, Java, C++, or Perlusing, for example, conventional or object-oriented techniques.

The software code may be stored as a series of instructions or commandson a non-transitory computer readable medium, such as a random accessmemory (RAM), a read only memory (ROM), a magnetic medium such as ahard-drive or a floppy disk, or an optical medium such as a CD-ROM. Anysuch computer readable medium may reside on or within a singlecomputational apparatus and may be present on or within differentcomputational apparatuses within a system or network.

It may be understood that the present invention as described above maybe implemented in the form of control logic using computer software in amodular or integrated manner. Based on the disclosure and teachingsprovided herein, a person of ordinary skill in the art may know andappreciate other ways and/or methods to implement the present inventionusing hardware, software, or a combination of hardware and software.

The above description is illustrative and is not restrictive. Manyvariations of the invention will become apparent to those skilled in theart upon review of the disclosure. The scope of the invention should,therefore, be determined not with reference to the above description,but instead should be determined with reference to the pending claimsalong with their full scope or equivalents.

One or more features from any embodiment may be combined with one ormore features of any other embodiment without departing from the scopeof the invention. A recitation of “a”, “an” or “the” is intended to mean“one or more” unless specifically indicated to the contrary. Recitationof “and/or” is intended to represent the most inclusive sense of theterm unless specifically indicated to the contrary.

One or more of the elements of the present system may be claimed asmeans for accomplishing a particular function. Where suchmeans-plus-function elements are used to describe certain elements of aclaimed system it will be understood by those of ordinary skill in theart having the present specification, figures and claims before them,that the corresponding structure is a general purpose computer,processor, or microprocessor (as the case may be) programmed to performthe particularly recited function using functionality found in anygeneral purpose computer without special programming and/or byimplementing one or more algorithms to achieve the recitedfunctionality. As would be understood by those of ordinary skill in theart that algorithm may be expressed within this disclosure as amathematical formula, a flow chart, a narrative, and/or in any othermanner that provides sufficient structure for those of ordinary skill inthe art to implement the recited process and its equivalents.

While the present disclosure may be embodied in many different forms,the drawings and discussion are presented with the understanding thatthe present disclosure is an exemplification of the principles of one ormore inventions and is not intended to limit any one of the inventionsto the embodiments illustrated.

The present disclosure provides a solution to the long-felt needdescribed above. In particular, the systems and methods described hereinmay be configured for improving data payload execution systems. Furtheradvantages and modifications of the above described system and methodwill readily occur to those skilled in the art. The disclosure, in itsbroader aspects, is therefore not limited to the specific details,representative system and methods, and illustrative examples shown anddescribed above. Various modifications and variations can be made to theabove specification without departing from the scope or spirit of thepresent disclosure, and it is intended that the present disclosurecovers all such modifications and variations provided they come withinthe scope of the following claims and their equivalents.

1.-20. (canceled)
 21. A computer-implemented method comprising: loadinga set of executable codes to a computer device prior to an execution ofan instance of a browser application on the computer device; during theexecution of the instance of the browser application, providing, by theset of executable codes, on a toolbar of the browser application, agraphical indicator of functionalities for interactions with a user ofthe computer device; during the execution of the instance of the browserapplication, providing, by the set of executable codes, a list ofproducts for purchase based on a successful login by the user to avirtual wallet account hosted on a server; during the execution of theinstance of the browser application, triggering a request for a paymenttoken to the server based on a selection by the user to purchase atleast one of the products; and during the execution of the instance ofthe browser application, receiving the payment token from the server,wherein the payment token is associated with the virtual wallet accountfor payment to be embedded as a payment payload.
 22. Thecomputer-implemented method of claim 21, further comprising embedding,during the execution of the instance of the browser application, thepayment token and detailed information of the purchase in the paymentpayload.
 23. The computer-implemented method of claim 22, furthercomprising transmitting, during the execution of the instance of thebrowser application, the payment payload to a merchant associated withthe products to complete the purchase.
 24. The computer-implementedmethod of claim 22, wherein the graphical indicator of thefunctionalities comprises a graphical button.
 25. Thecomputer-implemented method of claim 24, further comprising triggeringan execution of a graphical user interface (GUI) element on the browserapplication, in response to selecting the graphical button.
 26. Thecomputer-implemented method of claim 25, wherein the GUI element isconfigured to organize the products by categories.
 27. Thecomputer-implemented method of claim 26, further comprising triggeringan execution of a second GUI element on the browser application, inresponse to selecting one of the categories, wherein the second GUIelement comprises a window that shows details associated with one of theproducts.
 28. The computer-implemented method of claim 24, furthercomprising prompting the user to login to the virtual wallet account, inresponse to selecting the graphical button.
 29. A computer-implementedmethod, comprising: installing a browser extension for use with abrowser application of a computer device; during an execution of aninstance of the browser application, providing on the browserapplication, by the browser extension, a graphical indicator offunctionalities for interactions with a user of the computer device;during the execution of the instance of the browser application,providing, by the browser extension, a list of products for purchasebased on a successful login by the user to a virtual wallet accounthosted on a server; during the instance of the browser application,triggering a request for a payment token to the server based on aselection by the user to purchase at least one of the products; andduring the execution of the instance of the browser application,receiving the payment token from the server, wherein the payment tokenis associated with the virtual wallet account by the server for paymentto be embedded as a payment payload.
 30. The computer-implemented methodof claim 29, further comprising embedding, during the execution of theinstance of the browser application, the payment token and detailedinformation of the purchase in the payment payload.
 31. Thecomputer-implemented method of claim 30, further comprisingtransmitting, during the execution of the instance of the browserapplication, the payment payload to a merchant associated with theproducts to complete the purchase.
 32. The computer-implemented methodof claim 30, wherein the graphical indicator of the functionalitiescomprises a graphical button.
 33. The computer-implemented method ofclaim 32, further comprising triggering an execution of a graphical userinterface (GUI) element on the browser application, based on selectingthe graphical button.
 34. The computer-implemented method of claim 33,wherein the GUI element is configured to organize the products bycategories.
 35. The computer-implemented method of claim 34, furthercomprising triggering an execution of a second GUI element on thebrowser application, based on selecting one of the categories, whereinthe second GUI element comprises a window that shows details associatedwith one of the products.
 36. The computer-implemented method of claim34, further comprising prompting the user to login to the virtual walletaccount, in response to selecting the graphical button.
 37. Acomputer-implemented method comprising: installing a set of executablecodes to a computer device for an execution within a browser executionenvironment on the computer device; within the browser executionenvironment, providing, by the set of executable codes, a graphicalrepresentation of functionalities for interactions with a user of thecomputer device; within the browser execution environment, providing, bythe set of executable codes, a list of products for purchase based on asuccessful login by the user to a virtual wallet account hosted on aserver; within the browser execution environment, triggering a requestfor a payment token to the server based on a selection by the user topurchase at least one of the products; and within the browser executionenvironment, receiving the payment token from the server, wherein thepayment token is associated with the virtual wallet account by theserver for payment to be embedded as a payment payload.
 38. Thecomputer-implemented method of claim 27, further comprising embedding,within the browser execution environment, the payment token and detailedinformation of the purchase in the payment payload.
 39. Thecomputer-implemented method of claim 28, further comprising transmittingthe payment payload to a merchant associated with the products tocomplete the purchase.
 40. The computer-implemented method of claim 27,further comprising prompting, within the browser execution environment,the user to login to the virtual wallet account.